#ifndef FIFOOPS_H
#define FIFOOPS_H

/**
  *	Variables globales compartidas por main.c y fifoops.c:
  *	a) fifo_ops mantiene las funciones de nuestro controlador
  * b) buff es el buffer compartido por el "productor" y el "consumidor"	
  * c) sem_read garantiza el acceso exclusivo a la función read.
  * d) sem_write garantiza el acceso exclusivo a la función write
  * e) sem_buffer garantiza el acceso mutuo al buffer compartido
  * f) cola_read "guarda" los procesos dormidos al intentar leer (buff vacio)
  * g) cola_write "guarda" los proc dormidos al intentar escribir (buff lleno)
  */

extern struct file_operations fifo_ops;
extern rbuffer_t buffer;
extern struct semaphore sem_read;
extern struct semaphore sem_write;
extern struct semaphore sem_buffer;
extern wait_queue_head_t cola_read;
extern wait_queue_head_t cola_write;

#endif /* FIFOOPS_H */
